قبل از اينكه نگاهي عميق به مقوله NAT داشته باشيم مي بايست بدانيم كه عملكرد NAT چگونه است. بسته به نوع استفاده ، NAT روشهاي پياده سازي مختلفي دارد ولي همه آنها داراي يك مفهوم مي باشند.
NAT بسيار متداول شده تا آنجايي كه در قابليت پشتيباني از آن در اكثر دستگاه ها نظير router, firewall و... قرارداده شده است ويا حداقل يك نوع از اين تكنولوژي را پشتيباني مي كنند.
NAT تنها مختص شبكه هايي كه به اينترنت متصل هستند محدود نمي شوند ،بلكه شما از اين تكنولوژي مي توانيد بين شبكه هاي محلي خود نيز استفاده كنيد ولي چون اكثر سازمانها درجهت ارتباط با اينترنت از اين روش استفاده مي كنند ما نيز به بررسي همين نوع استفاده مي پردازيم.
مفهوم NAT بسيار ساده و به اين صورت است كه يك دستگاه (مثل كامپيوتر يا مسيرياب)به عنوان دروازه ورود به اينترنت عمل مي كند و با اين كار آدرس هاي ايستگاه هاي كاري را به آدرس دستگاهي كه NAT روي آن فعال است ترجمه مي كند ،به بيان ديگر NAT روي دستگاهي كه به اينترنت وصل شده فعال مي شود و ايستگاه هاي كاري و به طور كلي شبكه شما را از ديد اينترنت پنهان مي دارد.
از سوي ديگر اينترنت شبكه شما را به صورت يك دستگاه ساده مي بيند كه به اينترنت متصل مي باشد.
NAT روي شبكه تغيير ايجاد نمي كند و نيازي به تنظيمات دوباره روي ايستگاه هاي كاري نيست فقط ايستگاه هاي كاري مي بايست آدرس دروازه خروجي از شبكه را كه همان آدرس دستگاهي است كه NAT روي آن فعال شده را بدانند.
همانطوري كه در شكل بالا ديده مي شود شبكه با چهار ايستگاه كاري و يك مسيرياب جهت اتصال به اينترنت داريم .تمام ايستگاه هاي كاري داراي آدرس محلي گروه C مي باشند.
مفهوم NAT در شكل بالا به سادگي قابل فهم است.
NAT چگونه كار مي كند ؟
سه روش كلي براي اجراي NAT وجود دارد اگر چه قاعده كلي براي هر روش يكي است .همانطوري كه در شكل هاي بالا نشان داده شد ،ترافيك ارسالي از سمت ايستگاه هاي كاري از درون يك روتر به اينترنت وارد مي شوند و عمليات NAT را روي بسته ها انجام مي دهد و به مقصد مي فرستد.
هربسته اي كه روي كارت شبكه محلي مسيرياب دريافت مي شود توسط روتر عمليات جابجايي آدرس محلي با آدرس اينترنتي انجام مي شود و سپس بسته ها ارسال مي شود.
در اين شكل يك ايستگاه كاري از داخل شبكه يك بسته اطلاعاتي را به آدرس مقصد 135.250.24.10 مي فرستد ، اين بسته اطلاعاتي از داخل دروازه خروجي گذشته وبه اينترنت مي رسد.
عمليات NAT روي بسته ارسالي به روش زير ارسال مي گردد :
بسته اطلاعاتي اصلي پس از رسيدن به مسيرياب آدرس مبداء آن از 192.168.0.12 به 203.31.220.134 تغيير پيدا مي كند سپس روتر اين اطلاعات را در حافظه خود و در NAT-Table نگهداري مي كند و به اين طريق است كه بسته هايي هم كه از اينترنت ارسال مي شوند ،مقصد خود را تشخيص مي دهند.
بعد از بررسي مفاهيم NAT مختصري از مفهوم NAT Table را بررسي مي كنيم.
NAT Table قلب اصلي عملكردNAT مي باشد. هر ارتباطي از داخل شبكه به خارج شبكه مانند اينترنت در اين جدول ثبت مي شود تا مسيرياب بداند كه با اطلاعات دريافتي روي Interface هاي خود چگونه رفتار كند و به كجا بفرستد. اين جدول به تدريج توسط ارتباط هايي كه ايجاد شده و از درون مسيرياب مي گذرد پر مي شود و هرگاه كه ارتباطي قطع شود ركورد ثبت شده در اين جدول حذف مي گردد و فضا براي ثبت ركوردهاي ديگر باز مي شود.
NAT Table در نوع هاي مختلف NAT متفاوت كار مي كند. NAT Table بزرگتر به معني اشغال حافظه بيشتر است و مي تواند ارتباطات زيادتري را رديابي كند، به اين معني كه دستگاهي كه NAT روي آن فعال است ، جدول بزرگتري دارد و مي تواند ارتباطات بيشتري را نسبت به دستگاهي كه NAT Table آن كوچكتر است ثبت و كنترل نمايد. شكل زير ساختار يك NAT Table را نشان مي دهد:
شكل فوق نمايانگر دو درخواست از داخل و از ايستگاههای كاري 192.168.0.5 و 192.168.0.21 به دستگاهي كه NAT روي آن فعال است ، مي باشد. اين بسته هاي اطلاعاتي به صورت موقتي روي يك قسمت خاصي از مسيرياب ذخيره شده تا تغييرات اندكي روي آن انجام شود. در اين مثال مسيرياب آدرس مبداء هر بسته اطلاعاتي را كه همان آدرس محلي ايستگاه هاي كاري مي باشد با آدرس اينترنتي خود كه آدرس 203.31.22.134 است تعويض مي كند و سپس بسته اطلاعاتي از طريق كارت شبكه اينترنتي مسيرياب و يا دستگاهي كه NAT روي آن فعال است به اينترنت ميفرستد . يعني قبل از اينكه بسته هاي اطلاعاتي مسيرياب را ترك كنند يك ركورد براي هر بسته داخل جدول NAT ثبت مي شود اين ركورد مسيرياب را قادر مي سازد تا تصميم گيري مناسبي را براي بسته هايي كه از اينترنت برمي گردند انجام دهد.
وقتي كه جواب يك درخواست از اينترنت برمي گردد چه اتفاقي مي افتد؟
در واقع همان اتفاقي كه در مورد بسته هاي خروجي مي افتد روي بسته هاي ورودي نيز انجام مي شود.
وقتي جواب درخواستي از اينترنت به مسيریاب مي رسد ، مسيرياب از جدول NAT خود كمك گرفته و ركورد مشخص مربوط به اين درخواست را پيدا مي كند و يك تغيير كوچك ديگر روي بسته اطلاعاتي انجام مي دهد و اين تغيير، تعويض IP مقصد از 203.31.220.134 به 192.168.0.5 براي بسته اطلاعاتي اول و 192.168.0.21 براي بسته اطلاعاتي دوم مي باشد. سپس اين بسته هاي جديد به مقصدشان فرستاده مي شوند و مسيرياب ركورد مربوط به اين دو را از جدول NAT خود حذف مي كند.
روي اكثر دستگاه هايي كه NAT را پشتيباني مي كنند، ارتباطات NAT محدود به حافظه موجود روي آن دستگاه مي باشد. هر ترجمه NAT (تعويضIP) حدود 160 بايت از حافظه را اشغال مي كند. نتيجه اينكه اگر1000 ترجمه اتفاق بيفتد حدود 1.6 مگابايت از حافظه اشغال مي شود. بنابراين Platform ي براي استفاده از NAT مناسب است كه داراي حافظه كافي براي كنترل ارتباطات و عملكرد NAT را نيز داشته باشد.
نظرات شما عزیزان: